<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<TITLE>
POIFSReader (POI API Documentation)
</TITLE>


<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="POIFSReader (POI API Documentation)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/POIFSReader.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReaderEvent.html" title="class in org.apache.poi.poifs.eventfilesystem"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?org/apache/poi/poifs/eventfilesystem/POIFSReader.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="POIFSReader.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.poi.poifs.eventfilesystem</FONT>
<BR>
Class POIFSReader</H2>
<PRE>
java.lang.Object
  <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.poi.poifs.eventfilesystem.POIFSReader</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>POIFSReader</B><DT>extends java.lang.Object</DL>
</PRE>

<P>
An event-driven reader for POIFS file systems. Users of this class
 first create an instance of it, then use the registerListener
 methods to register POIFSReaderListener instances for specific
 documents. Once all the listeners have been registered, the read()
 method is called, which results in the listeners being notified as
 their documents are read.
<P>

<P>
<DL>
<DT><B>Author:</B></DT>
  <DD>Marc Johnson (mjohnson at apache dot org)</DD>
</DL>
<HR>

<P>

<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReader.html#POIFSReader()">POIFSReader</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a POIFSReader</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReader.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;read in files</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReader.html#read(java.io.InputStream)">read</A></B>(java.io.InputStream&nbsp;stream)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read from an InputStream and process the documents we get</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReader.html#registerListener(org.apache.poi.poifs.eventfilesystem.POIFSReaderListener)">registerListener</A></B>(<A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReaderListener.html" title="interface in org.apache.poi.poifs.eventfilesystem">POIFSReaderListener</A>&nbsp;listener)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Register a POIFSReaderListener for all documents</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReader.html#registerListener(org.apache.poi.poifs.eventfilesystem.POIFSReaderListener, org.apache.poi.poifs.filesystem.POIFSDocumentPath, java.lang.String)">registerListener</A></B>(<A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReaderListener.html" title="interface in org.apache.poi.poifs.eventfilesystem">POIFSReaderListener</A>&nbsp;listener,
                 <A HREF="../../../../../org/apache/poi/poifs/filesystem/POIFSDocumentPath.html" title="class in org.apache.poi.poifs.filesystem">POIFSDocumentPath</A>&nbsp;path,
                 java.lang.String&nbsp;name)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Register a POIFSReaderListener for a document in the specified
 directory</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReader.html#registerListener(org.apache.poi.poifs.eventfilesystem.POIFSReaderListener, java.lang.String)">registerListener</A></B>(<A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReaderListener.html" title="interface in org.apache.poi.poifs.eventfilesystem">POIFSReaderListener</A>&nbsp;listener,
                 java.lang.String&nbsp;name)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Register a POIFSReaderListener for a document in the root
 directory</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="POIFSReader()"><!-- --></A><H3>
POIFSReader</H3>
<PRE>
public <B>POIFSReader</B>()</PRE>
<DL>
<DD>Create a POIFSReader
<P>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="read(java.io.InputStream)"><!-- --></A><H3>
read</H3>
<PRE>
public void <B>read</B>(java.io.InputStream&nbsp;stream)
          throws java.io.IOException</PRE>
<DL>
<DD>Read from an InputStream and process the documents we get
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>stream</CODE> - the InputStream from which to read the data
<DT><B>Throws:</B>
<DD><CODE>java.io.IOException</CODE> - on errors reading, or on invalid data</DL>
</DD>
</DL>
<HR>

<A NAME="registerListener(org.apache.poi.poifs.eventfilesystem.POIFSReaderListener)"><!-- --></A><H3>
registerListener</H3>
<PRE>
public void <B>registerListener</B>(<A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReaderListener.html" title="interface in org.apache.poi.poifs.eventfilesystem">POIFSReaderListener</A>&nbsp;listener)</PRE>
<DL>
<DD>Register a POIFSReaderListener for all documents
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>listener</CODE> - the listener to be registered
<DT><B>Throws:</B>
<DD><CODE>java.lang.NullPointerException</CODE> - if listener is null
<DD><CODE>java.lang.IllegalStateException</CODE> - if read() has already been
                                  called</DL>
</DD>
</DL>
<HR>

<A NAME="registerListener(org.apache.poi.poifs.eventfilesystem.POIFSReaderListener, java.lang.String)"><!-- --></A><H3>
registerListener</H3>
<PRE>
public void <B>registerListener</B>(<A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReaderListener.html" title="interface in org.apache.poi.poifs.eventfilesystem">POIFSReaderListener</A>&nbsp;listener,
                             java.lang.String&nbsp;name)</PRE>
<DL>
<DD>Register a POIFSReaderListener for a document in the root
 directory
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>listener</CODE> - the listener to be registered<DD><CODE>name</CODE> - the document name
<DT><B>Throws:</B>
<DD><CODE>java.lang.NullPointerException</CODE> - if listener is null or name is
                                 null or empty
<DD><CODE>java.lang.IllegalStateException</CODE> - if read() has already been
                                  called</DL>
</DD>
</DL>
<HR>

<A NAME="registerListener(org.apache.poi.poifs.eventfilesystem.POIFSReaderListener, org.apache.poi.poifs.filesystem.POIFSDocumentPath, java.lang.String)"><!-- --></A><H3>
registerListener</H3>
<PRE>
public void <B>registerListener</B>(<A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReaderListener.html" title="interface in org.apache.poi.poifs.eventfilesystem">POIFSReaderListener</A>&nbsp;listener,
                             <A HREF="../../../../../org/apache/poi/poifs/filesystem/POIFSDocumentPath.html" title="class in org.apache.poi.poifs.filesystem">POIFSDocumentPath</A>&nbsp;path,
                             java.lang.String&nbsp;name)</PRE>
<DL>
<DD>Register a POIFSReaderListener for a document in the specified
 directory
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>listener</CODE> - the listener to be registered<DD><CODE>path</CODE> - the document path; if null, the root directory is
             assumed<DD><CODE>name</CODE> - the document name
<DT><B>Throws:</B>
<DD><CODE>java.lang.NullPointerException</CODE> - if listener is null or name is
                                 null or empty
<DD><CODE>java.lang.IllegalStateException</CODE> - if read() has already been
                                  called</DL>
</DD>
</DL>
<HR>

<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)
                 throws java.io.IOException</PRE>
<DL>
<DD>read in files
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>args</CODE> - names of the files
<DT><B>Throws:</B>
<DD><CODE>java.io.IOException</CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/POIFSReader.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../../org/apache/poi/poifs/eventfilesystem/POIFSReaderEvent.html" title="class in org.apache.poi.poifs.eventfilesystem"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?org/apache/poi/poifs/eventfilesystem/POIFSReader.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="POIFSReader.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

                <i>Copyright 2016 The Apache Software Foundation or
        its licensors, as applicable.</i>
            
</BODY>
</HTML>
